import Vue from 'vue'
import dayjs from 'dayjs'
import relativeTime from 'dayjs/plugin/relativeTime'
import 'dayjs/locale/zh-cn'

dayjs.locale('zh-cn')
dayjs.extend(relativeTime)

const filters = {
  /**
   * 功能：将时间戳按照给定的 时间/日期 格式进行处理
   * @param {Number} date 时间戳
   * @returns {String} 规范后的 时间/日期 字符串
   */
  formatDate (date) {
    if (!date) {
      return '---'
    }

    console.log(date, 'dadada')
    return dayjs(date).format('YYYY-MM-DD dddd') // 使用 dayjs 格式化时间
  },

  fmtTime (date) {
    if (dayjs().diff(dayjs(date), 'minutes') > 1) {
      return dayjs(date).fromNow()
    }
    return dayjs(date).format('YYYY-MM-DD HH:mm') // 使用 dayjs 格式化时间
  },
}

Vue.filter('dateFormat', (date, parttern = 'YYYY-MM-DD HH:mm') => dayjs(date).format(parttern))

Vue.prototype.$dayjs = dayjs

export default (Vue) => {
  Object.keys(filters).forEach((key) => {
    Vue.filter(key, filters[key])
  })
}
